??=[matrix]
The fundamental command of this feature is the command
||...|| that reads a matrix of entries in the generic
TEX row&column format, , where rows are separated with |
| and
contain columns separated with |&|. Thus a matrix with "maxrow" rows
and "maxcol" columns where each entry contains "row"|,|"col" is
entered as
|| |
|
|
|
| 1, 1 |
| |
| 1, 2 |
| ... |
| |
|
|
|
| 2, 1 |
| |
| 2, 2 |
| |
| |
|
|
|
|
|
|
|
"maxrow"|, 1 |
| |
"maxrow"|, 2 |
| |
(TEXnically the |&| character represents any `alignment tab', ,
character with category code 4).
A <matrix> can appear either in an -picture (as <decor>) or
``stand-alone''.
The points where || is different from ordinary matrix
constructions (like plain TEX's ||...|| and LATEX's
|array| environment) are
- arbitrary -pic <decor>ations may be specified in each entry and
will be interpreted in a state where c is the current entry,
- the entire matrix is an object itself with reference point as the top
left entry, and
- a progress message ``|<xymatrix| "rows"|x|"cols" "size"|>|'' is
printed for each matrix with
"rows"×"cols" entries and -pic
complexity "size" (the number of primitive operations performed).
- Entries starting with a |*| are special (described
in §??[entries]), so use |*| to get a
.
For example,
will typeset
In fact entries of one matrix may refer to entries of another by
using the <pos> save mechanism:
was typeset (using the `frame' extension) by
: Matrices cannot be nested.
2
Subsections